Наша оригинальная CMD команда, записанная в Dockerfile php
/cli.php - будет переопределена новой php /cli.php 9 .
Но, было бы неплохо передавать этот аргумент самому
контейнеру, вместо переписывания всей команды. Перепишем
так, чтобы вместо команды php /cli.php 7 можно было
передавать просто аргумент-число.
Для этого, дополним Dockerfile:
FROM php:7.2-cli
COPY cli.php /cli.php
RUN chmod +x /cli.php
ENTRYPOINT ["php", "/cli.php"]
## аргумент, который передаётся в командную строку
CMD ["9"]
Мы немного поменяли формат записи. В таком случае, CMD
будет добавлена к тому, что выполнится в ENTRYPOINT.
["php", "/cli.php"] на самом деле запускается, как php
/cli.php . И, учитывая то, что CMD будет добавлена после
выполнения текущей, то итоговая команда будет выглядеть
как: php /cli.php 9 - и пользователь сможет переопределить
этот аргумент, передавая его в командную строку, во время
запуска контейнера.
Теперь, заново пересоберём образ
docker build . --tag pyramid

И запустим контейнер с желаемым аргументом
docker run pyramid 3